namespace devtm.Aop.Emit
{
    using System;
    using Mono.Cecil;


    [Serializable]
    public class EmitPropertyReferenceExpression : EmitExpression
    {

        private EmitExpressionCollection parameters;
        private EmitExpression targetObject;


        public EmitPropertyReferenceExpression()
        {
            this.parameters = new EmitExpressionCollection();
        }

        public EmitPropertyReferenceExpression(EmitExpression targetObject, PropertyReference property)
        {
            this.parameters = new EmitExpressionCollection();
            this.TargetObject = targetObject;
            this.PropertyName = property;
        }

        public PropertyReference PropertyName { get; set; }

        public EmitExpression TargetObject { get; set; }



        public override System.Collections.Generic.IEnumerable<Mono.Cecil.Cil.Instruction> Compile()
        {
            throw new NotImplementedException();
        }
    }
}
